home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / pc / LOGIC Apple II 5.25" Library - DOS Part 3 / DOS078A.dsk / SPACE LANDER.bas < prev    next >
BASIC Source File  |  2012-02-16  |  10KB  |  233 lines

  1. 67  GOTO 25000
  2. 68  GOSUB 10000
  3. 69  GOSUB 20000
  4. 70 G = FU:DC = .1:TT = .15: VTAB 24: HTAB 29: PRINT "FUEL:";
  5. 90 SC = SC +1: VTAB 24: HTAB 35: PRINT YY -SC;"  ";
  6. 93  IF SC <YY  THEN  GOTO 95
  7. 94  PRINT "<CTRL-G>": INVERSE : VTAB 23: HTAB 13: PRINT "   OUT OF FUEL   ";: NORMAL : PRINT "        "
  8. 95  GOSUB 8000
  9. 282  IF YN >K  THEN  GOTO 1000
  10. 520  HCOLOR= 0
  11. 530  HPLOT XO,YO TO XO +4,YO TO XO +2,YO -3 TO XO,YO
  12. 535  IF YN <5  THEN YN = YO: GOTO 560
  13. 536  IF XN >265  THEN XN = XO: GOTO 560
  14. 540  HCOLOR= 3
  15. 550  HPLOT XN,YN TO XN +4,YN TO XN +2,YN -3 TO XN,YN
  16. 560  ON FLAG GOTO 95,600,650,700
  17. 600 FAG = 0: HCOLOR= 5
  18. 620  HPLOT XN -1,YN +7 TO XN +1,YN TO XN +3,YN +7
  19. 630  IF FAG = 1  THEN  GOTO 90
  20. 640 FAG = 1: HCOLOR= 0: GOTO 620
  21. 650 FAG = 0: HCOLOR= 5
  22. 660  HPLOT XN +4,YN -1 TO XN +10,YN -1
  23. 670  IF FAG = 1  THEN  GOTO 90
  24. 680 FAG = 1: HCOLOR= 0: GOTO 660
  25. 700 FAG = 0: HCOLOR= 5
  26. 710  HPLOT XN,YN -1 TO XN -6,YN -1
  27. 720  IF FAG = 1  THEN  GOTO 90
  28. 730 FAG = 1: HCOLOR= 0: GOTO 710
  29. 1000  IF XN >130  AND XN <155  THEN  GOTO 2000
  30. 1010  REM  OUT OF TARGET
  31. 1020  HGR : HCOLOR= 2: HPLOT 0,135 TO 45,125 TO 70,165
  32. 1030  HPLOT 55,135 TO 65,127 TO 100,135 TO 145,125 TO 155,130
  33. 1040  HPLOT 120,155 TO 160,128 TO 240,150
  34. 1050  HPLOT 192,132 TO 230,125 TO 279,130
  35. 1060  HCOLOR= 3: HPLOT 31,90: HPLOT 41,30: HPLOT 101,55: HPLOT 189,81: HPLOT 241,21: HPLOT 271,77
  36. 1070  HCOLOR= 1: FOR ZZ = 1 TO 4: HPLOT 97,129 +ZZ TO 110,129 +ZZ: NEXT 
  37. 1100 YN = 9:DC = 1.5 *DC:TT = 1.3 *TT
  38. 1110 VX = 2 *VX:VY = 2 *VY
  39. 1120 SC = SC +1: VTAB 24: HTAB 35: PRINT YY -SC;"  ";
  40. 1130  IF SC <YY  THEN  GOTO 1200
  41. 1140  VTAB 23: HTAB 13: INVERSE : PRINT "   OUT OF FUEL   ";: NORMAL : PRINT "         "
  42. 1200  GOSUB 8000
  43. 1220  IF YN <M  THEN VX = VX/2:VY = VY/2:YN = 130: GOTO 68
  44. 1240  IF YN >L  THEN  GOTO 1500
  45. 1270  HCOLOR= 0
  46. 1280  HPLOT XO,YO TO XO +QD,YO -QH TO XO +QH,YO TO XO +QD,YO -QC TO XO,YO
  47. 1290  IF XN <U  OR XN >V  THEN XN = XO: GOTO 1320
  48. 1300  HCOLOR= 3
  49. 1310  HPLOT XN,YN TO XN +QD,YN -QH TO XN +QH,YN TO XN +QD,YN -QC TO XN,YN
  50. 1320  ON FLAG GOTO 1200,1350,1400,1450
  51. 1350 FAG = 0: HCOLOR= 5
  52. 1360  HPLOT XN -QA,YN +QH TO XN +QC,YN -QB TO XN +QG,YN +QH
  53. 1370  IF FAG = 1  THEN  GOTO 1120
  54. 1380 FAG = 1: HCOLOR= 0: GOTO 1360
  55. 1400 FAG = 0: HCOLOR= 5
  56. 1410  HPLOT XN +QF,YN -QD TO XN +15,YN -QD
  57. 1420  IF FAG = 1  THEN  GOTO 1120
  58. 1430 FAG = 1: HCOLOR= 0: GOTO 1410
  59. 1450 FAG = 0: HCOLOR= 5
  60. 1460  HPLOT XN -QA,YN -QD TO XN -10,YN -QD
  61. 1470  IF FAG = 1  THEN  GOTO 1120
  62. 1480 FAG = 1: HCOLOR= 0: GOTO 1460
  63. 1500  REM  OFF SITE 
  64. 1510  IF XN >96  AND XN <109  THEN  GOTO 1550
  65. 1520 FAG = 0: HCOLOR= 3
  66. 1522  HPLOT XN -10,YN -3 TO XN,YN TO XN +8,YN -20
  67. 1524  HPLOT XN +3,YN -17 TO XN +8,YN TO XN +25,YN -4
  68. 1526  IF FAG = 1  THEN  GOTO 3000
  69. 1528 FAG = 1: HCOLOR= 0: GOTO 1522
  70. 1550  IF VY <1  THEN  GOTO 1600
  71. 1570  GOTO 3000
  72. 1600  HOME : VTAB 23: INVERSE 
  73. 1610  PRINT "<CTRL-G> YOU LANDED WAY OFF-TARGET,BUT YOU      ";
  74. 1620  PRINT " SAVED YOUR SHIP FOR RETURN TO EARTH !  ";
  75. 1630  NORMAL 
  76. 1640  GOTO 4020
  77. 2000  REM  IN TARGET
  78. 2010  HGR : HCOLOR= 3
  79. 2020  HPLOT 0,60 TO 20,30 TO 58,5 TO 76,70 TO 85,70 TO 97,120
  80. 2030  HPLOT 95,110 TO 100,110 TO 105,150 TO 170,150 TO 215,60 TO 220,90
  81. 2040  HPLOT 215,70 TO 240,20 TO 260,20 TO 279,50
  82. 2050  HCOLOR= 1: FOR ZZ = 1 TO 5: HPLOT 110,149 +ZZ TO 126,149 +ZZ: NEXT 
  83. 2060  HCOLOR= 2
  84. 2070  HPLOT 10,20: HPLOT 104,30: HPLOT 110,86: HPLOT 152,40: HPLOT 190,100: HPLOT 260,16
  85. 2100 YN = 9: REM 
  86. 2110 VX = 2 *VX:VY = 2 *VY
  87. 2120 SC = SC +1: VTAB 24: HTAB 35: PRINT YY -SC;"  ";
  88. 2130  IF SC <YY  THEN  GOTO 2200
  89. 2140  VTAB 23: HTAB 13: INVERSE : PRINT "   OUT OF FUEL   ";: NORMAL : PRINT "        "
  90. 2200  GOSUB 8000
  91. 2220  IF YN <M  THEN VX = VX/2:VY = VY/2:YN = 135: GOTO 68
  92. 2230  IF YN >F  THEN  GOTO 2500
  93. 2232  IF YN >B *XN -C  THEN  GOTO 2600
  94. 2234  IF YN >D -E *XN  THEN  GOTO 2700
  95. 2240  HCOLOR= 0
  96. 2242  HPLOT XO,YO TO XO +QD,YO -QH TO XO +QH,YO TO XO +QD,YO -QC TO XO,YO
  97. 2244  IF XN <U  OR XN >V  THEN XN = XO: GOTO 2250
  98. 2246  HCOLOR= 3: HPLOT XN,YN TO XN +QD,YN -QH TO XN +QH,YN TO XN +QD,YN -QC TO XN,YN
  99. 2250  ON FLAG GOTO 2200,2300,2350,2400
  100. 2300 FAG = 0: HCOLOR= 5
  101. 2310  HPLOT XN,YN +QF TO XN +QC,YN -QB TO XN +QF,YN +QF
  102. 2320  IF FAG = 1  THEN  GOTO 2120
  103. 2330 FAG = 1: HCOLOR= 0: GOTO 2310
  104. 2350 FAG = 0: HCOLOR= 5
  105. 2360  HPLOT XN +QF,YN -QD TO XN +15,YN -QD
  106. 2370  IF FAG = 1  THEN  GOTO 2120
  107. 2380 FAG = 1: HCOLOR= 0: GOTO 2360
  108. 2400 FAG = 0: HCOLOR= 5
  109. 2410  HPLOT XN -QA,YN -QD TO XN -10,YN -QD
  110. 2420  IF FAG = 1  THEN  GOTO 2120
  111. 2430 FAG = 1: HCOLOR= 0: GOTO 2410
  112. 2500  IF VY <1  THEN  GOTO 4000
  113. 2510 FAG = 0: HCOLOR= 3
  114. 2520  HPLOT XN -15,YN -15 TO XN,YN TO XN +20,YN -33
  115. 2530  HPLOT XN -5,YN -30 TO XN +8,YN TO XN +20,YN -15
  116. 2540  IF FAG = 1  THEN  GOTO 3000
  117. 2550 FAG = 1: HCOLOR= 0: GOTO 2520
  118. 2600 FAG = 0: HCOLOR= 3
  119. 2610  HPLOT XN +5,YN +20 TO XN,YN TO XN +20,YN -15
  120. 2620  HPLOT XN +30,YN +7 TO XN,YN -5 TO XN +10,YN -23
  121. 2630  IF FAG = 1  THEN  GOTO 3000
  122. 2640 FAG = 1: HCOLOR= 0: GOTO 2610
  123. 2700 FAG = 0: HCOLOR= 3
  124. 2710  HPLOT XN,YN +20 TO XN +8,YN TO XN -7,YN -10
  125. 2720  HPLOT XN -4,YN +5 TO XN +8,YN -4 TO XN,YN -25
  126. 2730  IF FAG = 1  THEN  GOTO 3000
  127. 2740 FAG = 1: HCOLOR= 0: GOTO 2710
  128. 3000  HPLOT XO,YO TO XO +4,YO -8 TO XO +8,YO
  129. 3010  PRINT "<CTRL-G><CTRL-G><CTRL-G>"
  130. 3020  HOME : VTAB 22: INVERSE 
  131. 3022  PRINT "      YOUR SHIP HAS CRASHED !!          ";
  132. 3024  PRINT "      *** REST IN PEACE ***             ";
  133. 3026  NORMAL 
  134. 3030  INPUT " TRY AGAIN (Y/N)?";A$
  135. 3040  IF A$ = "Y"  THEN  GOTO 25300
  136. 3050  IF A$ = "N"  THEN  GOTO 3100
  137. 3060  GOTO 3030
  138. 3100  TEXT : HOME : END 
  139. 4000  IF XN >126  OR XN <110  THEN  GOTO 4500
  140. 4010  HOME : VTAB 23: INVERSE 
  141. 4012  PRINT "<CTRL-G> CONGRATULATIONS, THE COLUMBIA HAS      ";
  142. 4014  PRINT " LANDED !!                              ";
  143. 4016  NORMAL 
  144. 4020  INPUT " TRY AGAIN (Y/N)?";A$
  145. 4030  IF A$ = "Y"  THEN  GOTO 25300
  146. 4040  IF A$ = "N"  THEN  GOTO 4060
  147. 4050  GOTO 4020
  148. 4060  TEXT : HOME : END 
  149. 4500  HOME : VTAB 23: INVERSE 
  150. 4502  PRINT "<CTRL-G><CTRL-G> YOU LANDED ON A ROUGH SPOT AND         ";
  151. 4504  PRINT " DAMAGED YOUR SHIP. YOUR TRIP IS ONE WAY";
  152. 4506  NORMAL 
  153. 4520  GOTO 4020
  154. 8000 FAG = 0:YO = YN:XO = XN
  155. 8002 S =  PEEK(R)
  156. 8003  POKE SS,T
  157. 8004  IF S = N  THEN FLAG = 1
  158. 8006  IF S = O  THEN FLAG = 2
  159. 8008  IF S = P  THEN FLAG = 3
  160. 8010  IF S = Q  THEN FLAG = 4
  161. 8012  IF SC >YY  THEN FLAG = 1
  162. 8014  ON FLAG GOTO 8016,8017,8018,8019
  163. 8016 A = G:H = 0: GOTO 8100
  164. 8017 A = G -TT:H = 0: GOTO 8100
  165. 8018 A = G:H =  -DC: GOTO 8100
  166. 8019 A = G:H = DC: GOTO 8100
  167. 8100 VY = VY +A:VX = VX +H:YN = YO +VY -A/2:XN = XO +VX -H/2
  168. 8116  RETURN 
  169. 10000  HGR : HCOLOR= 2
  170. 10020  HPLOT 17,150 TO 25,145 TO 40,145 TO 50,150 TO 65,150 TO 70,147 TO 90,147 TO 100,140 TO 110,140 TO 120,137 TO 125,149
  171. 10030  HPLOT 125,149 TO 130,149 TO 132,158 TO 152,158 TO 165,140 TO 180,140 TO 190,150 TO 210,153 TO 220,145 TO 240,145 TO 250,140 TO 279,150
  172. 10032  HCOLOR= 1: HPLOT 137,159 TO 147,159
  173. 10034  HPLOT 137,158 TO 147,158
  174. 10036  HPLOT 137,157 TO 147,157
  175. 10040  HCOLOR= 7
  176. 10050  HPLOT 10,20: HPLOT 20,60: HPLOT 20,120: HPLOT 40,150: HPLOT 72,40: HPLOT 100,86: HPLOT 170,120: HPLOT 180,36
  177. 10055  HPLOT 220,80: HPLOT 232,6: HPLOT 274,82
  178. 10100  HCOLOR= 1: HPLOT 103,140 TO 110,140: HPLOT 103,141 TO 110,141
  179. 10200  HPLOT 168,140 TO 175,140: HPLOT 168,141 TO 175,141
  180. 10300  RETURN 
  181. 20000 G = 0:DC = 0:TT = 0
  182. 20010  GOSUB 8000
  183. 20020  HCOLOR= 0
  184. 20030  HPLOT XO,YO TO XO +4,YO TO XO +2,YO -3 TO XO,YO
  185. 20040  IF XN >V  THEN XN = 10
  186. 20050  HCOLOR= 3
  187. 20060  HPLOT XN,YN TO XN +4,YN TO XN +2,YN -3 TO XN,YN
  188. 20070  IF FLAG >1  THEN  GOTO 20100
  189. 20080  GOTO 20010
  190. 20100  RETURN 
  191. 25000  TEXT : HOME : VTAB 5: INVERSE 
  192. 25010  PRINT "                                                                                ";
  193. 25020  VTAB 19
  194. 25030  PRINT "                                                                                ";
  195. 25040  NORMAL : VTAB 10
  196. 25050  PRINT "          SPACE LANDER                  ";
  197. 25060  VTAB 12: PRINT "               BY                       ";
  198. 25070  VTAB 14: PRINT "          MARCEL WIDMANN                ";
  199. 25080  VTAB 23: INPUT " CONTINUED>>";A$
  200. 25100  HOME : VTAB 5
  201. 25110  PRINT " THE OBJECT OF THE EXERCISE IS TO LAND   YOUR SPACESHIP 'COLUMBIA'ON A STELLAR   BODY."
  202. 25120  PRINT " THE FOLLOWING KEYES MUST BE USED TO     CONTROLL YOUR DESCENT:"
  203. 25140  PRINT 
  204. 25160  PRINT " G............MOVE TO THE LEFT"
  205. 25170  PRINT " J............MOVE TO THE RIGHT
  206. 25180  PRINT " Y............MOVE UP (RETRO ROCKET)"
  207. 25190  PRINT " SPACE BAR....SHUT DOWN ENGINES"
  208. 25200  PRINT : PRINT : PRINT 
  209. 25210  PRINT " IN ORDER TO LAND SUCCESSFULLY YOU MUST  REACH THE PLANETS SURFACE AT A VERY LOW DESCENT VELOCITY,"
  210. 25220  PRINT " AND PREFERABLY ON A GREEN MARKED SPOT. "
  211. 25225  VTAB 24
  212. 25230  INPUT "       CONTINUED>>";A$
  213. 25300  LOMEM: 16384
  214. 25301 F = 151:B = 3.09:C = 175:D = 465.3:E = 1.86
  215. 25302  ONERR  GOTO 3010
  216. 25303 K = 138:L = 130:M = 9:N = 160:O = 217:P = 199:Q = 202
  217. 25304 R =  -16384:QA = 1:QB = 2:QC = 3:QD = 4:QE = 5:QF = 6:QG = 7:QH = 8
  218. 25305 SS =  -16368:T = 0
  219. 25306 U = 20:V = 260
  220. 25307 FLAG = 1:YN = 5:XN = 10:SC = 0
  221. 25311  TEXT : HOME : VTAB 7: PRINT " SELECT FROM THE FOLLOWING:"
  222. 25312  PRINT : PRINT "****************************************"
  223. 25320  PRINT : PRINT 
  224. 25340  PRINT "   MOON LANDING (DIFFICULTY 1).....1    "
  225. 25350  PRINT "   MARS LANDING (    ''     2).....2    "
  226. 25360  PRINT "   VENUS LANDG. (    ''     3).....3    "
  227. 25380  VTAB 22: INPUT " ENTER SELECTION....:";FG
  228. 25390  IF FG <1  OR FG >3  THEN  GOTO 25380
  229. 25400  ON FG GOTO 25410,25420,25430
  230. 25410 YY = 180:FU = .07:VX = 3: GOTO 25500
  231. 25420 YY = 220:FU = .09:VX = 4: GOTO 25500
  232. 25430 YY = 360:FU = .11:VX = 4: GOTO 25500
  233. 25500  HOME : GOSUB 10000: GOSUB 20000: GOTO 70